#!/usr/bin/python3
# -*- coding:utf-8 -*-
""""
@Author: 李吉凯
@Email: lijk34925@hundsun.com
@Time: 2022/12/19 16:31
@File: 客户风险信息报备_新增功能.py
"""

import time
from qturboframe.lib.utils.by import By

from BladeFerm.Lib.Common import data_processing, logger
from BladeFerm.hui2_app import FE
from BladeFerm.utils.WindowsOpration import uploadWin32
from 基础公共脚本.公共方法_hui2 import open_menu
from 基础公共脚本.步骤检查_hui2 import check_ele_text

""""
函数功能：查询页面，新增数据。
数据示例：
input_data:
    - 筛选条件: 
        唯一客户号: 000000000101
      选择条件: 
        唯一客户号: 000000000101
      附件路径: D:\\下载\\受益所有人模板.xls
      风险事件信息: 
        事件类型: 信息公开程度难以评估的其他机构客户
        生效状态: 生效
        事件发生日期: 2022/12/09
        事件失效日期: 2022/12/30
        事件报备详情: UI自动化新增事件

ui_expect:
    - 期望结果: 新增
"""


@data_processing
def custom_risk_report_add(input_data=None, ui_expect=None):
    logger.info(f'input_data: {input_data}')
    open_menu({'子系统名称': '反洗钱系统', '菜单名称': "客户信息管理/客户风险信息报备"})

    # 点击 新增
    FE.button("新增").click()
    time.sleep(0.5)

    # 点击查询图标
    FE.button(idname={'xpath': '//form//i[contains(@class,"h-icon-search")]'}).click()
    time.sleep(3)
    # 输入筛选条件
    form = FE.form("唯一客户号")
    form.auto_fill(input_data.get("筛选条件"))
    form.button_option("查询")
    time.sleep(0.5)
    # 输入选择条件
    table = FE.table_new()
    table.click_cell(input_data.get("选择条件"))

    # 填写表单
    form = FE.form("唯一客户号")
    form.auto_fill(input_data.get("风险事件信息"))
    form.button_option("查询")

    # 上传附件
    if input_data.get("附件路径"):
        uploadWin32(input_data.get("附件路径"))

    # 点击提交
    express = f'//div[@class="btn-footer"]/button/span[contains(text(),"提交")]'
    FE.button(idname={By.XPATH: express}).click()

    # 检查查询结果
    check_ele_text(ui_expect=ui_expect)
